﻿using UnityEngine;

namespace FutureCoreEditor
{
    #region App
    public static class EPAppConst
    {
        public const string ABExtName = ".bytes";
        public const float PixelsPerUnit = 100;
        public static Vector2 ScreenResolution = new Vector2(1080, 1920);
    }

    public static class EPSplitConst
    {
        public const char DefaultTxtSplit = '=';
        public const char VerticalBar = '|';
        public const char Semicolon = ';';
    }
    #endregion

    #region Assets
    public static class EPABSharedPakCosnt
    {
        // 静态公共包 (Shader、材质球、静态字体)
        public const string StaticShared = "shared/staticshared";
        // 特效库公共包
        public const string EffectLibShared = "shared/effectlibshared";
        // Spine公共包
        public const string SpineLibShared = "shared/spinelibshared";
    }

    public static class EPAssetPakConst
    {
        /// 目录
        // 加载资源
        public const string Anim = "Anim/";
        public const string Atlas = "Atlas/";
        public const string Audio = "Audio/";
        public const string Data = "Data/";
        public const string DynamicFont = "DynamicFont/";
        public const string Effect = "Effect/";
        public const string Frames = "Frames/";
        public const string Module = "Module/";
        public const string Prefab = "Prefab/";
        public const string Skeleton = "Skeleton/";
        public const string Sprite = "Sprite/";
        public const string Texture = "Texture/";
        public const string Video = "Video/";
        // 公共加载资源
        public const string Shader = "Shader/";
        public const string Material = "Material/";
        public const string StaticFont = "StaticFont/";
        public const string EffectLib = "EffectLib/";
        // 公共基础资源
        public const string SpineShaders = "3rdLibrary/Spine/spine-unity/Shaders/";
        public const string SpineGraphicShaders = "3rdLibrary/Spine/spine-unity/Modules/SkeletonGraphic/Shaders/";

        /// 指定
        // 公共基础资源文件: SpineShader-Fill
        public const string SpineSkeletonShaderFillFile = "3rdLibrary/Spine/spine-unity/Modules/Shaders/Spine-Skeleton-Fill.shader";
        // 公共基础资源文件: SpineEditorIcon
        public const string SpineEditorGUIAtlasAssetIconFile = "3rdLibrary/Spine/spine-unity/Editor/GUI/AtlasAsset Icon.png";
        public const string SpineEditorGUISkeletonDataAssetIconFile = "3rdLibrary/Spine/spine-unity/Editor/GUI/SkeletonDataAsset Icon.png";
    }
    #endregion

    #region Anim
    public static class EPFightAnimRateConst
    {
        public const float AnimFrameRate = 30;
        public const float SecondRateUnit = 1 / AnimFrameRate;

        public const int Idle = 6;
        public const int Move = 8;
        public const int Atk = 10;
        public const int Skill = 10;
        public const int Dizzy = 6;
    }

    public enum EPFightActorAnimType : int
    {
        Idle = 0,
        Move,
        Atk,
        Skill,
        Dizzy,
        Rise,
    }
    #endregion

    #region Skeleton
    public static class EPAnimSlotConst
    {
        public const string HitPoint = "HitPoint";
        public const string AtkPoint = "AtkPoint";
    }
    #endregion

    #region Tiled
    public static class EPTiledConst
    {
        public const float GridUnit = 64;
    }
    #endregion
}